package com.example.ai.controller;

import com.example.ai.model.LoginRequest;
import com.example.ai.model.LoginResponse;
import com.example.ai.service.AuthService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

/**
 * 认证控制器，处理用户登录相关请求
 */
@RestController
@RequestMapping("/api/auth")
public class AuthController {
    
    private final AuthService authService;
    
    @Autowired
    public AuthController(AuthService authService) {
        this.authService = authService;
    }
    
    /**
     * 用户登录接口
     * @param loginRequest 登录请求信息
     * @return 登录响应结果
     */
    @PostMapping("/login")
    public LoginResponse login(@RequestBody LoginRequest loginRequest) {
        return authService.login(loginRequest);
    }
    
    /**
     * 验证token是否有效
     * @param token 用户token
     * @return 验证结果
     */
    @GetMapping("/validate")
    public boolean validateToken(@RequestHeader("Authorization") String token) {
        // 移除Bearer前缀（如果存在）
        if (token != null && token.startsWith("Bearer ")) {
            token = token.substring(7);
        }
        return authService.validateToken(token);
    }
}